// store 的主模块，分别导出四个东西对应 Vuex 的四个模块
// 保留的东西就会被状态树所接收到
export const state = () => ({
  count: 1
})

export const mutations = {
  CHANGE_COUNT(state, payload) {
    state.count = payload
  }
}

export const actions = {
  nuxtServerInit(store, { app: { $cookies } }) {
    // 初始化一些东西到 store 中
    // 从 cookie 中取出我们存的 token
    const token = $cookies.get('token') || ''
    // 再次储存到 vuex 中
    store.commit('user/SET_TOKEN', token)
  },
  ASYNC_FUN({ commit, state }, payload) {
    // 这里做异步处理
    console.log('🎨  >>> 这里做异步处理')
  }
}


export const getters = {
  doubleCount(state) {
    return state.count % 2 == 0
  }
}